package cn.minimelon.solon.domain.cert;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Getter;
import lombok.Setter;
import org.beetl.sql.annotation.entity.Table;
import org.noear.snack.annotation.ONodeAttr;

import java.util.Date;

/**
 * @author : auto
 * @date : 2024-10-14
 * @desc : 推送单
 */
@Getter
@Setter
@ApiModel("推送单")
@Table(name = "qc_push_info")
public class QcPushInfo {
    /**
     * 进院供应商ID
     */
    @ApiModelProperty("进院供应商ID")
    private String provId;
    /**
     * 进院供应商名称
     */
    @ApiModelProperty("进院供应商名称")
    private String provName;
    /**
     * 二级供应商ID
     */
    @ApiModelProperty("二级供应商ID")
    private String subProvId;
    /**
     * 二级供应商名称
     */
    @ApiModelProperty("二级供应商名称")
    private String subProvName;
    /**
     * 推送单号
     */
    @ApiModelProperty("推送单号")
    private String pushNo;
    /**
     * 推送医院
     */
    @ApiModelProperty("推送医院")
    private String hosId;
    /**
     * 推送医院名称
     */
    @ApiModelProperty("推送医院名称")
    private String hosName;
    /**
     * 推送方式;0:首营推送,1:资质推送
     */
    @ApiModelProperty("推送方式")
    private String pushType;
    /**
     * 进院方式;0:直接推送,1:二级商推送
     */
    @ApiModelProperty("进院方式")
    private String entryType;
    /**
     * 推送证件ID
     */
    @ApiModelProperty("推送证件ID")
    private String certId;
    /**
     * 证件编号
     */
    @ApiModelProperty("证件编号")
    private String certCode;
    /**
     * 证件类型;0:器械注册证,1:授权书,2:委托书,3:营业执照,4:生产许可证
     */
    @ApiModelProperty("证件类型")
    private String certType;
    /**
     * 证件名称
     */
    @ApiModelProperty("证件名称")
    private String certName;
    /**
     * 推送人
     */
    @ApiModelProperty("推送人")
    private String pushUser;
    /**
     * 推送时间
     */
    @ApiModelProperty("推送时间")
    @ONodeAttr(format = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date pushTime;
    /**
     * 扩展信息
     */
    @ApiModelProperty("扩展信息")
    private String extInfo;
    /**
     * 审核状态;0待提交 5集配审核  10医院审核  20已通过 40已撤销 50已驳回
     */
    @ApiModelProperty("审核状态")
    private Integer tbStatus;

    /**
     * 推送人
     */
    @ApiModelProperty("推送人")
    private String auditUser;
    /**
     * 推送时间
     */
    @ApiModelProperty("推送时间")
    @ONodeAttr(format = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date auditTime;


    /**
     * 医院审核状态;0医院初审 1医院审核
     */
    @ApiModelProperty("医院审核状态")
    private Integer hosAuditStatus;

    /**
     * 初审人
     */
    @ApiModelProperty("初审人")
    private String firstAuditUser;
    /**
     * 初审时间
     */
    @ApiModelProperty("初审时间")
    @ONodeAttr(format = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date firstAuditTime;

    @ApiModelProperty(value = "唯一标识")
    private String id;

    @ONodeAttr(format = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @ApiModelProperty(value = "修改时间")
    private Date lastModified;

    @ApiModelProperty(value = "数据版本")
    private Integer version;

    @ApiModelProperty(value = "创建时间")
    @ONodeAttr(format = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date createTime;

    @ApiModelProperty(value = "创建人ID")
    private String createUser;

    @ApiModelProperty(value = "修改人ID")
    private String lastModifiedUser;
}
